package com.shujia.java.day14.demo2;

import java.io.File;

/**
 * 批量修改指定后缀名的文件
 * <p>
 * test_004_赵六 - 副本.csv  ->004_赵六.txt
 * <p>
 * 定义FIle F:\\data
 * 通过listFiles() 获取当前目录下文件或目录的对象
 * isFile() 是 删除
 * 获取名称
 * 处理这个名字
 * 获取_ - .的下标  截取 004_赵六 和.csv
 * if（.csv）{
 * new File("004_赵六"+".txt");
 * renameTo
 */
public class Demo3 {
    public static void main(String[] args) {
        //提出来pathName 因为下面还要使用
        String path="F:\\data";
        //定义FIle F:\\data
        File file = new File(path);
        //通过listFiles() 获取当前目录下文件或目录的对象
        File[] files = file.listFiles();
        //循环
        for (File f : files) {
            //isFile() 是否是文件
            if (f.isFile()) {
                //获取名称
                String fileName = f.getName();
                //获取.
                int index3 = fileName.indexOf(".");
                //截取 .csv
                String lastName = fileName.substring(index3);
                //判断文件的后缀没那个是否是.csv  是，进一步处理
                if (lastName.equals(".csv")) {
                    //处理String  获取_-  截取004_赵六
                    //获取_
                    int index1 = fileName.indexOf("_");
                    //获取-
                    int index2 = fileName.indexOf("-");
                    //截取 004_赵六
                    String name = fileName.substring(index1+1, index2);
                    //拼接 004_赵六.txt
                    String newName=name+".txt";
                    //替换操作  需要新的File对象
                    File newFile = new File(path,newName);
                    //替换
                    System.out.println(f.renameTo(newFile));
                }
            }
        }

    }
}
